/*
 * This file is part of the OWL API.
 *
 * The contents of this file are subject to the LGPL License, Version 3.0.
 *
 * Copyright (C) 2011, Ulm University
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see http://www.gnu.org/licenses/.
 *
 *
 * Alternatively, the contents of this file may be used under the terms of the Apache License, Version 2.0
 * in which case, the provisions of the Apache License Version 2.0 are applicable instead of those above.
 *
 * Copyright 2011, Ulm University
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

/* Generated By:JavaCC: Do not edit this line. KRSS2ParserTokenManager.java */
package de.uulm.ecs.ai.owlapi.krssparser;

import org.semanticweb.owlapi.model.OWLRuntimeException;

import uk.ac.manchester.cs.JavaCharStream;

/** Token Manager. */
@SuppressWarnings({"unused","javadoc"})
public class KRSS2ParserTokenManager implements KRSS2ParserConstants
{

    /** Debug output. */
    public  java.io.PrintStream debugStream = System.out;
    /** Set debug output. */
    public  void setDebugStream(java.io.PrintStream ds) { debugStream = ds; }
    private int jjStopAtPos(int pos, int kind)
    {
        jjmatchedKind = kind;
        jjmatchedPos = pos;
        return pos + 1;
    }
    private int jjMoveStringLiteralDfa0_0()
    {
        switch(curChar)
        {
            case 9:
                jjmatchedKind = 2;
                return jjMoveNfa_0(2, 0);
            case 10:
                jjmatchedKind = 7;
                return jjMoveNfa_0(2, 0);
            case 13:
                jjmatchedKind = 3;
                return jjMoveNfa_0(2, 0);
            case 32:
                jjmatchedKind = 1;
                return jjMoveNfa_0(2, 0);
            case 34:
                jjmatchedKind = 4;
                return jjMoveNfa_0(2, 0);
            case 40:
                jjmatchedKind = 18;
                return jjMoveNfa_0(2, 0);
            case 41:
                jjmatchedKind = 19;
                return jjMoveNfa_0(2, 0);
            case 58:
                jjmatchedKind = 63;
                return jjMoveStringLiteralDfa1_0(0x8ef10000000000L, 0x0L);
            case 59:
                jjmatchedKind = 8;
                return jjMoveNfa_0(2, 0);
            case 60:
                jjmatchedKind = 11;
                return jjMoveNfa_0(2, 0);
            case 65:
                return jjMoveStringLiteralDfa1_0(0xc90000000L, 0x0L);
            case 67:
                return jjMoveStringLiteralDfa1_0(0x400000L, 0x0L);
            case 68:
                return jjMoveStringLiteralDfa1_0(0xc0000e003800000L, 0x0L);
            case 69:
                return jjMoveStringLiteralDfa1_0(0x1000001004300000L, 0x1L);
            case 73:
                return jjMoveStringLiteralDfa1_0(0x2000000008000000L, 0x0L);
            case 78:
                return jjMoveStringLiteralDfa1_0(0x40010000L, 0x0L);
            case 79:
                return jjMoveStringLiteralDfa1_0(0x120000000L, 0x0L);
            case 82:
                return jjMoveStringLiteralDfa1_0(0x4031000000000000L, 0x0L);
            case 83:
                return jjMoveStringLiteralDfa1_0(0x200000000L, 0x0L);
            case 84:
                jjmatchedKind = 17;
                return jjMoveStringLiteralDfa1_0(0x100000000000000L, 0x0L);
            case 92:
                jjmatchedKind = 6;
                return jjMoveNfa_0(2, 0);
            case 97:
                return jjMoveStringLiteralDfa1_0(0xc90000000L, 0x0L);
            case 99:
                return jjMoveStringLiteralDfa1_0(0x400000L, 0x0L);
            case 100:
                return jjMoveStringLiteralDfa1_0(0xc0000e003800000L, 0x0L);
            case 101:
                return jjMoveStringLiteralDfa1_0(0x1000001004300000L, 0x1L);
            case 105:
                return jjMoveStringLiteralDfa1_0(0x20000e0008000000L, 0x0L);
            case 110:
                return jjMoveStringLiteralDfa1_0(0x40010000L, 0x0L);
            case 111:
                return jjMoveStringLiteralDfa1_0(0x120000000L, 0x0L);
            case 114:
                return jjMoveStringLiteralDfa1_0(0x4031000000000000L, 0x0L);
            case 115:
                return jjMoveStringLiteralDfa1_0(0x40000200000000L, 0x0L);
            case 116:
                jjmatchedKind = 17;
                return jjMoveStringLiteralDfa1_0(0x100000000000000L, 0x0L);
            case 124:
                jjmatchedKind = 5;
                return jjMoveNfa_0(2, 0);
            default :
                return jjMoveNfa_0(2, 0);
        }
    }
    private int jjMoveStringLiteralDfa1_0(long active0, long active1)
    {
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 0);
        }
        switch(curChar)
        {
            case 65:
                return jjMoveStringLiteralDfa2_0(active0, 0x1000000000000L, active1, 0L);
            case 69:
                return jjMoveStringLiteralDfa2_0(active0, 0x4400006001800000L, active1, 0L);
            case 73:
                return jjMoveStringLiteralDfa2_0(active0, 0x800008002010000L, active1, 0L);
            case 76:
                return jjMoveStringLiteralDfa2_0(active0, 0x80000000L, active1, 0L);
            case 77:
                return jjMoveStringLiteralDfa2_0(active0, 0x8000000L, active1, 0L);
            case 78:
                return jjMoveStringLiteralDfa2_0(active0, 0x2000000110300000L, active1, 0x1L);
            case 79:
                return jjMoveStringLiteralDfa2_0(active0, 0x30000240400000L, active1, 0L);
            case 80:
                return jjMoveStringLiteralDfa2_0(active0, 0xc00000000000L, active1, 0L);
            case 81:
                return jjMoveStringLiteralDfa2_0(active0, 0x1000000004000000L, active1, 0L);
            case 82:
                if ((active0 & 0x20000000L) != 0L)
                {
                    jjmatchedKind = 29;
                    jjmatchedPos = 1;
                }
                return jjMoveStringLiteralDfa2_0(active0, 0x100000000000000L, active1, 0L);
            case 84:
                return jjMoveStringLiteralDfa2_0(active0, 0xc00000000L, active1, 0L);
            case 88:
                return jjMoveStringLiteralDfa2_0(active0, 0x1000000000L, active1, 0L);
            case 97:
                return jjMoveStringLiteralDfa2_0(active0, 0x1000000000000L, active1, 0L);
            case 100:
                return jjMoveStringLiteralDfa2_0(active0, 0x10000000000L, active1, 0L);
            case 101:
                return jjMoveStringLiteralDfa2_0(active0, 0x4400006001800000L, active1, 0L);
            case 105:
                return jjMoveStringLiteralDfa2_0(active0, 0x800108002010000L, active1, 0L);
            case 108:
                return jjMoveStringLiteralDfa2_0(active0, 0x200080000000L, active1, 0L);
            case 109:
                return jjMoveStringLiteralDfa2_0(active0, 0x20008000000L, active1, 0L);
            case 110:
                return jjMoveStringLiteralDfa2_0(active0, 0x20000c0110300000L, active1, 0x1L);
            case 111:
                return jjMoveStringLiteralDfa2_0(active0, 0x30000240400000L, active1, 0L);
            case 112:
                return jjMoveStringLiteralDfa2_0(active0, 0xc00000000000L, active1, 0L);
            case 113:
                return jjMoveStringLiteralDfa2_0(active0, 0x1000000004000000L, active1, 0L);
            case 114:
                if ((active0 & 0x20000000L) != 0L)
                {
                    jjmatchedKind = 29;
                    jjmatchedPos = 1;
                }
                return jjMoveStringLiteralDfa2_0(active0, 0x10e000000000000L, active1, 0L);
            case 115:
                return jjMoveStringLiteralDfa2_0(active0, 0x80000000000000L, active1, 0L);
            case 116:
                return jjMoveStringLiteralDfa2_0(active0, 0xc00000000L, active1, 0L);
            case 117:
                return jjMoveStringLiteralDfa2_0(active0, 0x40000000000000L, active1, 0L);
            case 120:
                return jjMoveStringLiteralDfa2_0(active0, 0x1000000000L, active1, 0L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 1);
    }
    private int jjMoveStringLiteralDfa2_0(long old0, long active0, long old1, long active1)
    {
        if (((active0 &= old0) | (active1 &= old1)) == 0L) {
            return jjMoveNfa_0(2, 1);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 1);
        }
        switch(curChar)
        {
            case 45:
                return jjMoveStringLiteralDfa3_0(active0, 0xc00000000L, active1, 0L);
            case 65:
                return jjMoveStringLiteralDfa3_0(active0, 0x100c01000000000L, active1, 0L);
            case 68:
                if ((active0 & 0x10000000L) != 0L)
                {
                    jjmatchedKind = 28;
                    jjmatchedPos = 2;
                }
                return jjMoveStringLiteralDfa3_0(active0, 0x300000L, active1, 0L);
            case 69:
                return jjMoveStringLiteralDfa3_0(active0, 0x100000000L, active1, 0L);
            case 70:
                return jjMoveStringLiteralDfa3_0(active0, 0x400006001800000L, active1, 0L);
            case 76:
                if ((active0 & 0x10000L) != 0L)
                {
                    jjmatchedKind = 16;
                    jjmatchedPos = 2;
                }
                else if ((active0 & 0x80000000L) != 0L)
                {
                    jjmatchedKind = 31;
                    jjmatchedPos = 2;
                }
                return jjMoveStringLiteralDfa3_0(active0, 0x4030000000000000L, active1, 0L);
            case 77:
                return jjMoveStringLiteralDfa3_0(active0, 0x200400000L, active1, 0L);
            case 78:
                return jjMoveStringLiteralDfa3_0(active0, 0x1000000000000L, active1, 0L);
            case 80:
                return jjMoveStringLiteralDfa3_0(active0, 0x8000000L, active1, 0L);
            case 83:
                return jjMoveStringLiteralDfa3_0(active0, 0x2800008002000000L, active1, 0L);
            case 84:
                if ((active0 & 0x40000000L) != 0L)
                {
                    jjmatchedKind = 30;
                    jjmatchedPos = 2;
                }
                break;
            case 85:
                return jjMoveStringLiteralDfa3_0(active0, 0x1000000004000000L, active1, 0x1L);
            case 97:
                return jjMoveStringLiteralDfa3_0(active0, 0x102c01000000000L, active1, 0L);
            case 98:
                return jjMoveStringLiteralDfa3_0(active0, 0x40000000000000L, active1, 0L);
            case 100:
                if ((active0 & 0x10000000L) != 0L)
                {
                    jjmatchedKind = 28;
                    jjmatchedPos = 2;
                }
                return jjMoveStringLiteralDfa3_0(active0, 0x300000L, active1, 0L);
            case 101:
                return jjMoveStringLiteralDfa3_0(active0, 0x4200100000000L, active1, 0L);
            case 102:
                return jjMoveStringLiteralDfa3_0(active0, 0x400006001800000L, active1, 0L);
            case 105:
                return jjMoveStringLiteralDfa3_0(active0, 0x8000000000000L, active1, 0L);
            case 108:
                if ((active0 & 0x10000L) != 0L)
                {
                    jjmatchedKind = 16;
                    jjmatchedPos = 2;
                }
                else if ((active0 & 0x80000000L) != 0L)
                {
                    jjmatchedKind = 31;
                    jjmatchedPos = 2;
                }
                return jjMoveStringLiteralDfa3_0(active0, 0x4030000000000000L, active1, 0L);
            case 109:
                return jjMoveStringLiteralDfa3_0(active0, 0x200400000L, active1, 0L);
            case 110:
                return jjMoveStringLiteralDfa3_0(active0, 0x1100000000000L, active1, 0L);
            case 111:
                return jjMoveStringLiteralDfa3_0(active0, 0x10000000000L, active1, 0L);
            case 112:
                return jjMoveStringLiteralDfa3_0(active0, 0x20008000000L, active1, 0L);
            case 115:
                return jjMoveStringLiteralDfa3_0(active0, 0x2800008002000000L, active1, 0L);
            case 116:
                if ((active0 & 0x40000000L) != 0L)
                {
                    jjmatchedKind = 30;
                    jjmatchedPos = 2;
                }
                break;
            case 117:
                return jjMoveStringLiteralDfa3_0(active0, 0x1000000004000000L, active1, 0x1L);
            case 118:
                if ((active0 & 0x40000000000L) != 0L)
                {
                    jjmatchedKind = 42;
                    jjmatchedPos = 2;
                }
                return jjMoveStringLiteralDfa3_0(active0, 0x80000000000L, active1, 0L);
            case 121:
                return jjMoveStringLiteralDfa3_0(active0, 0x80000000000000L, active1, 0L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 2);
    }
    private int jjMoveStringLiteralDfa3_0(long old0, long active0, long old1, long active1)
    {
        if (((active0 &= old0) | (active1 &= old1)) == 0L) {
            return jjMoveNfa_0(2, 2);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 2);
        }
        switch(curChar)
        {
            case 45:
                return jjMoveStringLiteralDfa4_0(active0, 0x100300000L, active1, 0L);
            case 65:
                return jjMoveStringLiteralDfa4_0(active0, 0x5000000000000000L, active1, 0L);
            case 67:
                return jjMoveStringLiteralDfa4_0(active0, 0x1000000000L, active1, 0L);
            case 69:
                if ((active0 & 0x200000000L) != 0L)
                {
                    jjmatchedKind = 33;
                    jjmatchedPos = 3;
                }
                return jjMoveStringLiteralDfa4_0(active0, 0x30000000000000L, active1, 0L);
            case 71:
                return jjMoveStringLiteralDfa4_0(active0, 0x1000000000000L, active1, 0L);
            case 73:
                return jjMoveStringLiteralDfa4_0(active0, 0x400006005800000L, active1, 0L);
            case 74:
                return jjMoveStringLiteralDfa4_0(active0, 0x8002000000L, active1, 0L);
            case 76:
                return jjMoveStringLiteralDfa4_0(active0, 0x408000000L, active1, 0L);
            case 77:
                if ((active1 & 0x1L) != 0L)
                {
                    jjmatchedKind = 64;
                    jjmatchedPos = 3;
                }
                return jjMoveStringLiteralDfa4_0(active0, 0x800000000L, active1, 0L);
            case 78:
                return jjMoveStringLiteralDfa4_0(active0, 0x100000000000000L, active1, 0L);
            case 80:
                return jjMoveStringLiteralDfa4_0(active0, 0x400000L, active1, 0L);
            case 82:
                return jjMoveStringLiteralDfa4_0(active0, 0xc00000000000L, active1, 0L);
            case 84:
                return jjMoveStringLiteralDfa4_0(active0, 0x2800000000000000L, active1, 0L);
            case 97:
                return jjMoveStringLiteralDfa4_0(active0, 0x5000000000000000L, active1, 0L);
            case 99:
                return jjMoveStringLiteralDfa4_0(active0, 0x1000000000L, active1, 0L);
            case 101:
                if ((active0 & 0x200000000L) != 0L)
                {
                    jjmatchedKind = 33;
                    jjmatchedPos = 3;
                }
                return jjMoveStringLiteralDfa4_0(active0, 0x30080000000000L, active1, 0L);
            case 102:
                return jjMoveStringLiteralDfa4_0(active0, 0x4200000000000L, active1, 0L);
            case 103:
                return jjMoveStringLiteralDfa4_0(active0, 0x9000000000000L, active1, 0L);
            case 105:
                return jjMoveStringLiteralDfa4_0(active0, 0x400006005800000L, active1, 0L);
            case 106:
                return jjMoveStringLiteralDfa4_0(active0, 0x8002000000L, active1, 0L);
            case 108:
                return jjMoveStringLiteralDfa4_0(active0, 0x20408000000L, active1, 0L);
            case 109:
                if ((active1 & 0x1L) != 0L)
                {
                    jjmatchedKind = 64;
                    jjmatchedPos = 3;
                }
                return jjMoveStringLiteralDfa4_0(active0, 0x80010800000000L, active1, 0L);
            case 110:
                return jjMoveStringLiteralDfa4_0(active0, 0x102000000000000L, active1, 0L);
            case 112:
                return jjMoveStringLiteralDfa4_0(active0, 0x400000L, active1, 0L);
            case 114:
                return jjMoveStringLiteralDfa4_0(active0, 0x40c00000000000L, active1, 0L);
            case 116:
                return jjMoveStringLiteralDfa4_0(active0, 0x2800000000000000L, active1, 0L);
            case 118:
                return jjMoveStringLiteralDfa4_0(active0, 0x100000000000L, active1, 0L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 3);
    }
    private int jjMoveStringLiteralDfa4_0(long old0, long active0, long old1, long active1)
    {
        if (((active0 &= old0) | (active1 &= old1)) == 0L) {
            return jjMoveNfa_0(2, 3);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 3);
        }
        switch(curChar)
        {
            case 45:
                return jjMoveStringLiteralDfa5_0(active0, 0x20000000000000L);
            case 65:
                return jjMoveStringLiteralDfa5_0(active0, 0x2000000000200000L);
            case 69:
                if ((active0 & 0x1000000000000L) != 0L)
                {
                    jjmatchedKind = 48;
                    jjmatchedPos = 4;
                }
                return jjMoveStringLiteralDfa5_0(active0, 0xc00400000000L);
            case 73:
                return jjMoveStringLiteralDfa5_0(active0, 0x800000008000000L);
            case 76:
                if ((active0 & 0x1000000000000000L) != 0L)
                {
                    jjmatchedKind = 60;
                    jjmatchedPos = 4;
                }
                break;
            case 78:
                return jjMoveStringLiteralDfa5_0(active0, 0x400006001800000L);
            case 79:
                return jjMoveStringLiteralDfa5_0(active0, 0x8902400000L);
            case 83:
                return jjMoveStringLiteralDfa5_0(active0, 0x110000000000000L);
            case 84:
                return jjMoveStringLiteralDfa5_0(active0, 0x4000001000100000L);
            case 86:
                return jjMoveStringLiteralDfa5_0(active0, 0x4000000L);
            case 97:
                return jjMoveStringLiteralDfa5_0(active0, 0x2000010000200000L);
            case 101:
                if ((active0 & 0x1000000000000L) != 0L)
                {
                    jjmatchedKind = 48;
                    jjmatchedPos = 4;
                }
                return jjMoveStringLiteralDfa5_0(active0, 0xd00400000000L);
            case 103:
                return jjMoveStringLiteralDfa5_0(active0, 0x2000000000000L);
            case 104:
                return jjMoveStringLiteralDfa5_0(active0, 0x8000000000000L);
            case 105:
                return jjMoveStringLiteralDfa5_0(active0, 0x800020008000000L);
            case 108:
                if ((active0 & 0x1000000000000000L) != 0L)
                {
                    jjmatchedKind = 60;
                    jjmatchedPos = 4;
                }
                return jjMoveStringLiteralDfa5_0(active0, 0x4000000000000L);
            case 109:
                return jjMoveStringLiteralDfa5_0(active0, 0x80000000000000L);
            case 110:
                return jjMoveStringLiteralDfa5_0(active0, 0x400006001800000L);
            case 111:
                return jjMoveStringLiteralDfa5_0(active0, 0x40008902400000L);
            case 114:
                return jjMoveStringLiteralDfa5_0(active0, 0x80000000000L);
            case 115:
                return jjMoveStringLiteralDfa5_0(active0, 0x110000000000000L);
            case 116:
                return jjMoveStringLiteralDfa5_0(active0, 0x4000201000100000L);
            case 118:
                return jjMoveStringLiteralDfa5_0(active0, 0x4000000L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 4);
    }
    private int jjMoveStringLiteralDfa5_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 4);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 4);
        }
        switch(curChar)
        {
            case 45:
                return jjMoveStringLiteralDfa6_0(active0, 0x10200000000000L);
            case 65:
                return jjMoveStringLiteralDfa6_0(active0, 0x404000000L);
            case 66:
                return jjMoveStringLiteralDfa6_0(active0, 0x300000L);
            case 69:
                return jjMoveStringLiteralDfa6_0(active0, 0x4400006009800000L);
            case 70:
                if ((active0 & 0x100000000L) != 0L)
                {
                    jjmatchedKind = 32;
                    jjmatchedPos = 5;
                }
                break;
            case 73:
                return jjMoveStringLiteralDfa6_0(active0, 0x120008002000000L);
            case 76:
                return jjMoveStringLiteralDfa6_0(active0, 0x1000000000L);
            case 78:
                return jjMoveStringLiteralDfa6_0(active0, 0x2800c00000000000L);
            case 83:
                return jjMoveStringLiteralDfa6_0(active0, 0x800400000L);
            case 97:
                return jjMoveStringLiteralDfa6_0(active0, 0x404000000L);
            case 98:
                return jjMoveStringLiteralDfa6_0(active0, 0x300000L);
            case 101:
                if ((active0 & 0x2000000000000L) != 0L)
                {
                    jjmatchedKind = 49;
                    jjmatchedPos = 5;
                }
                return jjMoveStringLiteralDfa6_0(active0, 0x4484026009800000L);
            case 102:
                if ((active0 & 0x100000000L) != 0L)
                {
                    jjmatchedKind = 32;
                    jjmatchedPos = 5;
                }
                break;
            case 105:
                return jjMoveStringLiteralDfa6_0(active0, 0x120018002000000L);
            case 108:
                return jjMoveStringLiteralDfa6_0(active0, 0x40001000000000L);
            case 110:
                return jjMoveStringLiteralDfa6_0(active0, 0x2800c00000000000L);
            case 114:
                return jjMoveStringLiteralDfa6_0(active0, 0x100000000000L);
            case 115:
                return jjMoveStringLiteralDfa6_0(active0, 0x80800400000L);
            case 116:
                return jjMoveStringLiteralDfa6_0(active0, 0x8000000000000L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 5);
    }
    private int jjMoveStringLiteralDfa6_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 5);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 5);
        }
        switch(curChar)
        {
            case 45:
                return jjMoveStringLiteralDfa7_0(active0, 0x408006001800000L);
            case 67:
                return jjMoveStringLiteralDfa7_0(active0, 0x2800000000000000L);
            case 68:
                if ((active0 & 0x4000000000000000L) != 0L)
                {
                    jjmatchedKind = 62;
                    jjmatchedPos = 6;
                }
                break;
            case 69:
                if ((active0 & 0x400000L) != 0L)
                {
                    jjmatchedKind = 22;
                    jjmatchedPos = 6;
                }
                return jjMoveStringLiteralDfa7_0(active0, 0x10000000000000L);
            case 76:
                return jjMoveStringLiteralDfa7_0(active0, 0x4000000L);
            case 78:
                return jjMoveStringLiteralDfa7_0(active0, 0x20008002000000L);
            case 79:
                return jjMoveStringLiteralDfa7_0(active0, 0x300000L);
            case 83:
                if ((active0 & 0x8000000L) != 0L)
                {
                    jjmatchedKind = 27;
                    jjmatchedPos = 6;
                }
                return jjMoveStringLiteralDfa7_0(active0, 0x400000000L);
            case 84:
                if ((active0 & 0x800000000L) != 0L)
                {
                    jjmatchedKind = 35;
                    jjmatchedPos = 6;
                }
                else if ((active0 & 0x400000000000L) != 0L)
                {
                    jjmatchedKind = 46;
                    jjmatchedPos = 6;
                }
                return jjMoveStringLiteralDfa7_0(active0, 0x100800000000000L);
            case 89:
                if ((active0 & 0x1000000000L) != 0L)
                {
                    jjmatchedKind = 36;
                    jjmatchedPos = 6;
                }
                break;
            case 99:
                return jjMoveStringLiteralDfa7_0(active0, 0x2800000000000000L);
            case 100:
                if ((active0 & 0x4000000000000000L) != 0L)
                {
                    jjmatchedKind = 62;
                    jjmatchedPos = 6;
                }
                break;
            case 101:
                if ((active0 & 0x400000L) != 0L)
                {
                    jjmatchedKind = 22;
                    jjmatchedPos = 6;
                }
                else if ((active0 & 0x80000000000L) != 0L)
                {
                    jjmatchedKind = 43;
                    jjmatchedPos = 6;
                }
                else if ((active0 & 0x40000000000000L) != 0L)
                {
                    jjmatchedKind = 54;
                    jjmatchedPos = 6;
                }
                return jjMoveStringLiteralDfa7_0(active0, 0x10000000000000L);
            case 105:
                return jjMoveStringLiteralDfa7_0(active0, 0x200000000000L);
            case 108:
                return jjMoveStringLiteralDfa7_0(active0, 0x4000000L);
            case 110:
                if ((active0 & 0x10000000000L) != 0L)
                {
                    jjmatchedKind = 40;
                    jjmatchedPos = 6;
                }
                return jjMoveStringLiteralDfa7_0(active0, 0x20008002000000L);
            case 111:
                return jjMoveStringLiteralDfa7_0(active0, 0x300000L);
            case 115:
                if ((active0 & 0x8000000L) != 0L)
                {
                    jjmatchedKind = 27;
                    jjmatchedPos = 6;
                }
                return jjMoveStringLiteralDfa7_0(active0, 0x120400000000L);
            case 116:
                if ((active0 & 0x800000000L) != 0L)
                {
                    jjmatchedKind = 35;
                    jjmatchedPos = 6;
                }
                else if ((active0 & 0x400000000000L) != 0L)
                {
                    jjmatchedKind = 46;
                    jjmatchedPos = 6;
                }
                return jjMoveStringLiteralDfa7_0(active0, 0x180800000000000L);
            case 120:
                return jjMoveStringLiteralDfa7_0(active0, 0x4000000000000L);
            case 121:
                if ((active0 & 0x1000000000L) != 0L)
                {
                    jjmatchedKind = 36;
                    jjmatchedPos = 6;
                }
                break;
            default :
                break;
        }
        return jjMoveNfa_0(2, 6);
    }
    private int jjMoveStringLiteralDfa7_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 6);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 6);
        }
        switch(curChar)
        {
            case 45:
                return jjMoveStringLiteralDfa8_0(active0, 0x20000000000L);
            case 67:
                return jjMoveStringLiteralDfa8_0(active0, 0x20000000800000L);
            case 69:
                if ((active0 & 0x2000000000000000L) != 0L)
                {
                    jjmatchedKind = 61;
                    jjmatchedPos = 7;
                }
                return jjMoveStringLiteralDfa8_0(active0, 0x4000000L);
            case 73:
                return jjMoveStringLiteralDfa8_0(active0, 0x500000000000000L);
            case 80:
                return jjMoveStringLiteralDfa8_0(active0, 0x4001000000L);
            case 81:
                return jjMoveStringLiteralDfa8_0(active0, 0x10000000000000L);
            case 82:
                return jjMoveStringLiteralDfa8_0(active0, 0x2000000000L);
            case 83:
                if ((active0 & 0x800000000000L) != 0L)
                {
                    jjmatchedKind = 47;
                    jjmatchedPos = 7;
                }
                break;
            case 84:
                if ((active0 & 0x2000000L) != 0L)
                {
                    jjmatchedKind = 25;
                    jjmatchedPos = 7;
                }
                else if ((active0 & 0x400000000L) != 0L)
                {
                    jjmatchedKind = 34;
                    jjmatchedPos = 7;
                }
                else if ((active0 & 0x800000000000000L) != 0L)
                {
                    jjmatchedKind = 59;
                    jjmatchedPos = 7;
                }
                return jjMoveStringLiteralDfa8_0(active0, 0x8000000000L);
            case 88:
                if ((active0 & 0x100000L) != 0L)
                {
                    jjmatchedKind = 20;
                    jjmatchedPos = 7;
                }
                else if ((active0 & 0x200000L) != 0L)
                {
                    jjmatchedKind = 21;
                    jjmatchedPos = 7;
                }
                break;
            case 99:
                return jjMoveStringLiteralDfa8_0(active0, 0x20000000800000L);
            case 100:
                return jjMoveStringLiteralDfa8_0(active0, 0x200000000000L);
            case 101:
                if ((active0 & 0x100000000000L) != 0L)
                {
                    jjmatchedKind = 44;
                    jjmatchedPos = 7;
                }
                else if ((active0 & 0x2000000000000000L) != 0L)
                {
                    jjmatchedKind = 61;
                    jjmatchedPos = 7;
                }
                return jjMoveStringLiteralDfa8_0(active0, 0x4000000L);
            case 105:
                return jjMoveStringLiteralDfa8_0(active0, 0x50c000000000000L);
            case 112:
                return jjMoveStringLiteralDfa8_0(active0, 0x4001000000L);
            case 113:
                return jjMoveStringLiteralDfa8_0(active0, 0x10000000000000L);
            case 114:
                return jjMoveStringLiteralDfa8_0(active0, 0x80002000000000L);
            case 115:
                if ((active0 & 0x800000000000L) != 0L)
                {
                    jjmatchedKind = 47;
                    jjmatchedPos = 7;
                }
                break;
            case 116:
                if ((active0 & 0x2000000L) != 0L)
                {
                    jjmatchedKind = 25;
                    jjmatchedPos = 7;
                }
                else if ((active0 & 0x400000000L) != 0L)
                {
                    jjmatchedKind = 34;
                    jjmatchedPos = 7;
                }
                else if ((active0 & 0x800000000000000L) != 0L)
                {
                    jjmatchedKind = 59;
                    jjmatchedPos = 7;
                }
                return jjMoveStringLiteralDfa8_0(active0, 0x8000000000L);
            case 120:
                if ((active0 & 0x100000L) != 0L)
                {
                    jjmatchedKind = 20;
                    jjmatchedPos = 7;
                }
                else if ((active0 & 0x200000L) != 0L)
                {
                    jjmatchedKind = 21;
                    jjmatchedPos = 7;
                }
                break;
            default :
                break;
        }
        return jjMoveNfa_0(2, 7);
    }
    private int jjMoveStringLiteralDfa8_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 7);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 7);
        }
        switch(curChar)
        {
            case 45:
                return jjMoveStringLiteralDfa9_0(active0, 0x8000000000L);
            case 76:
                return jjMoveStringLiteralDfa9_0(active0, 0x20000000000000L);
            case 78:
                return jjMoveStringLiteralDfa9_0(active0, 0x400000004000000L);
            case 79:
                return jjMoveStringLiteralDfa9_0(active0, 0x2000800000L);
            case 82:
                return jjMoveStringLiteralDfa9_0(active0, 0x4001000000L);
            case 85:
                return jjMoveStringLiteralDfa9_0(active0, 0x10000000000000L);
            case 86:
                return jjMoveStringLiteralDfa9_0(active0, 0x100000000000000L);
            case 100:
                return jjMoveStringLiteralDfa9_0(active0, 0x8000000000000L);
            case 101:
                return jjMoveStringLiteralDfa9_0(active0, 0x200000000000L);
            case 105:
                return jjMoveStringLiteralDfa9_0(active0, 0x80000000000000L);
            case 108:
                return jjMoveStringLiteralDfa9_0(active0, 0x20000000000000L);
            case 110:
                return jjMoveStringLiteralDfa9_0(active0, 0x400000004000000L);
            case 111:
                return jjMoveStringLiteralDfa9_0(active0, 0x2000800000L);
            case 114:
                return jjMoveStringLiteralDfa9_0(active0, 0x24001000000L);
            case 117:
                return jjMoveStringLiteralDfa9_0(active0, 0x10000000000000L);
            case 118:
                return jjMoveStringLiteralDfa9_0(active0, 0x104000000000000L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 8);
    }
    private int jjMoveStringLiteralDfa9_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 8);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 8);
        }
        switch(curChar)
        {
            case 68:
                return jjMoveStringLiteralDfa10_0(active0, 0x400000000000000L);
            case 69:
                if ((active0 & 0x100000000000000L) != 0L)
                {
                    jjmatchedKind = 56;
                    jjmatchedPos = 9;
                }
                break;
            case 73:
                return jjMoveStringLiteralDfa10_0(active0, 0x10004001000000L);
            case 76:
                return jjMoveStringLiteralDfa10_0(active0, 0x2000000000L);
            case 78:
                return jjMoveStringLiteralDfa10_0(active0, 0x800000L);
            case 82:
                return jjMoveStringLiteralDfa10_0(active0, 0x8000000000L);
            case 84:
                if ((active0 & 0x4000000L) != 0L)
                {
                    jjmatchedKind = 26;
                    jjmatchedPos = 9;
                }
                break;
            case 85:
                return jjMoveStringLiteralDfa10_0(active0, 0x20000000000000L);
            case 99:
                if ((active0 & 0x80000000000000L) != 0L)
                {
                    jjmatchedKind = 55;
                    jjmatchedPos = 9;
                }
                break;
            case 100:
                return jjMoveStringLiteralDfa10_0(active0, 0x400000000000000L);
            case 101:
                if ((active0 & 0x4000000000000L) != 0L)
                {
                    jjmatchedKind = 50;
                    jjmatchedPos = 9;
                }
                else if ((active0 & 0x100000000000000L) != 0L)
                {
                    jjmatchedKind = 56;
                    jjmatchedPos = 9;
                }
                return jjMoveStringLiteralDfa10_0(active0, 0x8000000000000L);
            case 105:
                return jjMoveStringLiteralDfa10_0(active0, 0x10004001000000L);
            case 108:
                return jjMoveStringLiteralDfa10_0(active0, 0x2000000000L);
            case 110:
                return jjMoveStringLiteralDfa10_0(active0, 0x200000800000L);
            case 111:
                return jjMoveStringLiteralDfa10_0(active0, 0x20000000000L);
            case 114:
                return jjMoveStringLiteralDfa10_0(active0, 0x8000000000L);
            case 116:
                if ((active0 & 0x4000000L) != 0L)
                {
                    jjmatchedKind = 26;
                    jjmatchedPos = 9;
                }
                break;
            case 117:
                return jjMoveStringLiteralDfa10_0(active0, 0x20000000000000L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 9);
    }
    private int jjMoveStringLiteralDfa10_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 9);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 9);
        }
        switch(curChar)
        {
            case 67:
                return jjMoveStringLiteralDfa11_0(active0, 0x800000L);
            case 69:
                if ((active0 & 0x2000000000L) != 0L)
                {
                    jjmatchedKind = 37;
                    jjmatchedPos = 10;
                }
                break;
            case 73:
                return jjMoveStringLiteralDfa11_0(active0, 0x400000000000000L);
            case 77:
                return jjMoveStringLiteralDfa11_0(active0, 0x4001000000L);
            case 79:
                return jjMoveStringLiteralDfa11_0(active0, 0x8000000000L);
            case 83:
                return jjMoveStringLiteralDfa11_0(active0, 0x20000000000000L);
            case 86:
                return jjMoveStringLiteralDfa11_0(active0, 0x10000000000000L);
            case 99:
                return jjMoveStringLiteralDfa11_0(active0, 0x800000L);
            case 101:
                if ((active0 & 0x2000000000L) != 0L)
                {
                    jjmatchedKind = 37;
                    jjmatchedPos = 10;
                }
                break;
            case 105:
                return jjMoveStringLiteralDfa11_0(active0, 0x400000000000000L);
            case 108:
                return jjMoveStringLiteralDfa11_0(active0, 0x20000000000L);
            case 109:
                return jjMoveStringLiteralDfa11_0(active0, 0x4001000000L);
            case 110:
                return jjMoveStringLiteralDfa11_0(active0, 0x8000000000000L);
            case 111:
                return jjMoveStringLiteralDfa11_0(active0, 0x8000000000L);
            case 115:
                return jjMoveStringLiteralDfa11_0(active0, 0x20000000000000L);
            case 116:
                return jjMoveStringLiteralDfa11_0(active0, 0x200000000000L);
            case 118:
                return jjMoveStringLiteralDfa11_0(active0, 0x10000000000000L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 10);
    }
    private int jjMoveStringLiteralDfa11_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 10);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 10);
        }
        switch(curChar)
        {
            case 65:
                return jjMoveStringLiteralDfa12_0(active0, 0x10000000000000L);
            case 69:
                return jjMoveStringLiteralDfa12_0(active0, 0x800000L);
            case 73:
                return jjMoveStringLiteralDfa12_0(active0, 0x20004001000000L);
            case 76:
                return jjMoveStringLiteralDfa12_0(active0, 0x8000000000L);
            case 86:
                return jjMoveStringLiteralDfa12_0(active0, 0x400000000000000L);
            case 97:
                return jjMoveStringLiteralDfa12_0(active0, 0x10000000000000L);
            case 101:
                if ((active0 & 0x20000000000L) != 0L)
                {
                    jjmatchedKind = 41;
                    jjmatchedPos = 11;
                }
                return jjMoveStringLiteralDfa12_0(active0, 0x800000L);
            case 105:
                return jjMoveStringLiteralDfa12_0(active0, 0x20204001000000L);
            case 108:
                return jjMoveStringLiteralDfa12_0(active0, 0x8000000000L);
            case 116:
                return jjMoveStringLiteralDfa12_0(active0, 0x8000000000000L);
            case 118:
                return jjMoveStringLiteralDfa12_0(active0, 0x400000000000000L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 11);
    }
    private int jjMoveStringLiteralDfa12_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 11);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 11);
        }
        switch(curChar)
        {
            case 69:
                return jjMoveStringLiteralDfa13_0(active0, 0x8000000000L);
            case 73:
                return jjMoveStringLiteralDfa13_0(active0, 0x400000000000000L);
            case 76:
                return jjMoveStringLiteralDfa13_0(active0, 0x10000000000000L);
            case 79:
                return jjMoveStringLiteralDfa13_0(active0, 0x20000000000000L);
            case 80:
                return jjMoveStringLiteralDfa13_0(active0, 0x800000L);
            case 84:
                return jjMoveStringLiteralDfa13_0(active0, 0x4001000000L);
            case 101:
                return jjMoveStringLiteralDfa13_0(active0, 0x8000000000L);
            case 105:
                return jjMoveStringLiteralDfa13_0(active0, 0x408000000000000L);
            case 108:
                return jjMoveStringLiteralDfa13_0(active0, 0x10000000000000L);
            case 111:
                return jjMoveStringLiteralDfa13_0(active0, 0x20000000000000L);
            case 112:
                return jjMoveStringLiteralDfa13_0(active0, 0x800000L);
            case 116:
                return jjMoveStringLiteralDfa13_0(active0, 0x204001000000L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 12);
    }
    private int jjMoveStringLiteralDfa13_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 12);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 12);
        }
        switch(curChar)
        {
            case 68:
                return jjMoveStringLiteralDfa14_0(active0, 0x400000000000000L);
            case 69:
                return jjMoveStringLiteralDfa14_0(active0, 0x10000000000000L);
            case 73:
                return jjMoveStringLiteralDfa14_0(active0, 0x4001000000L);
            case 78:
                if ((active0 & 0x20000000000000L) != 0L)
                {
                    jjmatchedKind = 53;
                    jjmatchedPos = 13;
                }
                break;
            case 83:
                if ((active0 & 0x8000000000L) != 0L)
                {
                    jjmatchedKind = 39;
                    jjmatchedPos = 13;
                }
                break;
            case 84:
                if ((active0 & 0x800000L) != 0L)
                {
                    jjmatchedKind = 23;
                    jjmatchedPos = 13;
                }
                break;
            case 100:
                return jjMoveStringLiteralDfa14_0(active0, 0x400000000000000L);
            case 101:
                return jjMoveStringLiteralDfa14_0(active0, 0x10000000000000L);
            case 105:
                return jjMoveStringLiteralDfa14_0(active0, 0x4001000000L);
            case 110:
                if ((active0 & 0x20000000000000L) != 0L)
                {
                    jjmatchedKind = 53;
                    jjmatchedPos = 13;
                }
                break;
            case 115:
                if ((active0 & 0x8000000000L) != 0L)
                {
                    jjmatchedKind = 39;
                    jjmatchedPos = 13;
                }
                break;
            case 116:
                if ((active0 & 0x800000L) != 0L)
                {
                    jjmatchedKind = 23;
                    jjmatchedPos = 13;
                }
                return jjMoveStringLiteralDfa14_0(active0, 0x8000000000000L);
            case 121:
                if ((active0 & 0x200000000000L) != 0L)
                {
                    jjmatchedKind = 45;
                    jjmatchedPos = 13;
                }
                break;
            default :
                break;
        }
        return jjMoveNfa_0(2, 13);
    }
    private int jjMoveStringLiteralDfa14_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 13);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 13);
        }
        switch(curChar)
        {
            case 78:
                return jjMoveStringLiteralDfa15_0(active0, 0x10000000000000L);
            case 85:
                return jjMoveStringLiteralDfa15_0(active0, 0x400000000000000L);
            case 86:
                return jjMoveStringLiteralDfa15_0(active0, 0x4001000000L);
            case 110:
                return jjMoveStringLiteralDfa15_0(active0, 0x10000000000000L);
            case 117:
                return jjMoveStringLiteralDfa15_0(active0, 0x400000000000000L);
            case 118:
                return jjMoveStringLiteralDfa15_0(active0, 0x4001000000L);
            case 121:
                if ((active0 & 0x8000000000000L) != 0L)
                {
                    jjmatchedKind = 51;
                    jjmatchedPos = 14;
                }
                break;
            default :
                break;
        }
        return jjMoveNfa_0(2, 14);
    }
    private int jjMoveStringLiteralDfa15_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 14);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 14);
        }
        switch(curChar)
        {
            case 65:
                return jjMoveStringLiteralDfa16_0(active0, 0x400000000000000L);
            case 69:
                return jjMoveStringLiteralDfa16_0(active0, 0x4001000000L);
            case 84:
                if ((active0 & 0x10000000000000L) != 0L)
                {
                    jjmatchedKind = 52;
                    jjmatchedPos = 15;
                }
                break;
            case 97:
                return jjMoveStringLiteralDfa16_0(active0, 0x400000000000000L);
            case 101:
                return jjMoveStringLiteralDfa16_0(active0, 0x4001000000L);
            case 116:
                if ((active0 & 0x10000000000000L) != 0L)
                {
                    jjmatchedKind = 52;
                    jjmatchedPos = 15;
                }
                break;
            default :
                break;
        }
        return jjMoveNfa_0(2, 15);
    }
    private int jjMoveStringLiteralDfa16_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 15);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 15);
        }
        switch(curChar)
        {
            case 45:
                return jjMoveStringLiteralDfa17_0(active0, 0x4001000000L);
            case 76:
                if ((active0 & 0x400000000000000L) != 0L)
                {
                    jjmatchedKind = 58;
                    jjmatchedPos = 16;
                }
                break;
            case 108:
                if ((active0 & 0x400000000000000L) != 0L)
                {
                    jjmatchedKind = 58;
                    jjmatchedPos = 16;
                }
                break;
            default :
                break;
        }
        return jjMoveNfa_0(2, 16);
    }
    private int jjMoveStringLiteralDfa17_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 16);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 16);
        }
        switch(curChar)
        {
            case 67:
                return jjMoveStringLiteralDfa18_0(active0, 0x1000000L);
            case 82:
                return jjMoveStringLiteralDfa18_0(active0, 0x4000000000L);
            case 99:
                return jjMoveStringLiteralDfa18_0(active0, 0x1000000L);
            case 114:
                return jjMoveStringLiteralDfa18_0(active0, 0x4000000000L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 17);
    }
    private int jjMoveStringLiteralDfa18_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 17);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 17);
        }
        switch(curChar)
        {
            case 79:
                return jjMoveStringLiteralDfa19_0(active0, 0x4001000000L);
            case 111:
                return jjMoveStringLiteralDfa19_0(active0, 0x4001000000L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 18);
    }
    private int jjMoveStringLiteralDfa19_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 18);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 18);
        }
        switch(curChar)
        {
            case 76:
                return jjMoveStringLiteralDfa20_0(active0, 0x4000000000L);
            case 78:
                return jjMoveStringLiteralDfa20_0(active0, 0x1000000L);
            case 108:
                return jjMoveStringLiteralDfa20_0(active0, 0x4000000000L);
            case 110:
                return jjMoveStringLiteralDfa20_0(active0, 0x1000000L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 19);
    }
    private int jjMoveStringLiteralDfa20_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 19);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 19);
        }
        switch(curChar)
        {
            case 67:
                return jjMoveStringLiteralDfa21_0(active0, 0x1000000L);
            case 69:
                if ((active0 & 0x4000000000L) != 0L)
                {
                    jjmatchedKind = 38;
                    jjmatchedPos = 20;
                }
                break;
            case 99:
                return jjMoveStringLiteralDfa21_0(active0, 0x1000000L);
            case 101:
                if ((active0 & 0x4000000000L) != 0L)
                {
                    jjmatchedKind = 38;
                    jjmatchedPos = 20;
                }
                break;
            default :
                break;
        }
        return jjMoveNfa_0(2, 20);
    }
    private int jjMoveStringLiteralDfa21_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 20);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 20);
        }
        switch(curChar)
        {
            case 69:
                return jjMoveStringLiteralDfa22_0(active0, 0x1000000L);
            case 101:
                return jjMoveStringLiteralDfa22_0(active0, 0x1000000L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 21);
    }
    private int jjMoveStringLiteralDfa22_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 21);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 21);
        }
        switch(curChar)
        {
            case 80:
                return jjMoveStringLiteralDfa23_0(active0, 0x1000000L);
            case 112:
                return jjMoveStringLiteralDfa23_0(active0, 0x1000000L);
            default :
                break;
        }
        return jjMoveNfa_0(2, 22);
    }
    private int jjMoveStringLiteralDfa23_0(long old0, long active0)
    {
        if ((active0 &= old0) == 0L) {
            return jjMoveNfa_0(2, 22);
        }
        try { curChar = input_stream.readChar(); }
        catch(java.io.IOException e) {
            return jjMoveNfa_0(2, 22);
        }
        switch(curChar)
        {
            case 84:
                if ((active0 & 0x1000000L) != 0L)
                {
                    jjmatchedKind = 24;
                    jjmatchedPos = 23;
                }
                break;
            case 116:
                if ((active0 & 0x1000000L) != 0L)
                {
                    jjmatchedKind = 24;
                    jjmatchedPos = 23;
                }
                break;
            default :
                break;
        }
        return jjMoveNfa_0(2, 23);
    }
    static final long[] jjbitVec0 = {
        0xfffe7000fffffff6L, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xfe00000000ffffffL
    };
    static final long[] jjbitVec2 = {
        0x0L, 0x0L, 0x0L, 0xff7fffffff7fffffL
    };
    static final long[] jjbitVec3 = {
        0x0L, 0xbfff000000000000L, 0xffffffffffffffffL, 0xffffffffffffffffL
    };
    static final long[] jjbitVec4 = {
        0x3000L, 0xffff000000000000L, 0xffffffffffffffffL, 0xffffffffffffffffL
    };
    static final long[] jjbitVec5 = {
        0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffL, 0x0L
    };
    static final long[] jjbitVec6 = {
        0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffL
    };
    static final long[] jjbitVec7 = {
        0xfffffffffffffffeL, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL
    };
    static final long[] jjbitVec8 = {
        0x0L, 0x0L, 0x80000000000000L, 0xff7fffffff7fffffL
    };
    private int jjMoveNfa_0(int startState, int curPos)
    {
        int strKind = jjmatchedKind;
        int strPos = jjmatchedPos;
        int seenUpto;
        input_stream.backup(seenUpto = curPos + 1);
        try { curChar = input_stream.readChar(); }
 catch (java.io.IOException e) {
            throw new OWLRuntimeException("Internal Error", e);
        }
        curPos = 0;
        int startsAt = 0;
        jjnewStateCnt = 51;
        int i = 1;
        jjstateSet[0] = startState;
        int kind = 0x7fffffff;
        for (;;)
        {
            if (++jjround == 0x7fffffff) {
                ReInitRounds();
            }
            if (curChar < 64)
            {
                long l = 1L << curChar;
                do
                {
                    switch(jjstateSet[--i])
                    {
                        case 2:
                            if ((0x7ffe0e800000000L & l) != 0L)
                            {
                                if (kind > 66) {
                                    kind = 66;
                                }
                                jjCheckNAdd(50);
                            }
                            else if (curChar == 42) {
                                jjAddStates(0, 2);
                            }
                            if ((0x3ff000000000000L & l) != 0L)
                            {
                                if (kind > 65) {
                                    kind = 65;
                                }
                                jjCheckNAdd(9);
                            }
                            else if ((0x400a0c800000000L & l) != 0L)
                            {
                                if (kind > 68) {
                                    kind = 68;
                                }
                            }
                            if (curChar == 58) {
                                jjAddStates(3, 4);
                            }
                            break;
                        case 9:
                            if ((0x3ff000000000000L & l) == 0L) {
                                break;
                            }
                            if (kind > 65) {
                                kind = 65;
                            }
                            jjCheckNAdd(9);
                            break;
                        case 10:
                            if ((0x400a0c800000000L & l) != 0L && kind > 68) {
                                kind = 68;
                            }
                            break;
                        case 11:
                            if (curChar == 58) {
                                jjAddStates(3, 4);
                            }
                            break;
                        case 32:
                            if (curChar == 42) {
                                jjAddStates(0, 2);
                            }
                            break;
                        case 33:
                            if (curChar == 42 && kind > 14) {
                                kind = 14;
                            }
                            break;
                        case 37:
                            if (curChar == 42 && kind > 15) {
                                kind = 15;
                            }
                            break;
                        case 50:
                            if ((0x7ffe0e800000000L & l) == 0L) {
                                break;
                            }
                            if (kind > 66) {
                                kind = 66;
                            }
                            jjCheckNAdd(50);
                            break;
                        default : break;
                    }
                } while(i != startsAt);
            }
            else if (curChar < 128)
            {
                long l = 1L << (curChar & 077);
                do
                {
                    switch(jjstateSet[--i])
                    {
                        case 2:
                            if ((0x7fffffe87fffffeL & l) != 0L)
                            {
                                if (kind > 66) {
                                    kind = 66;
                                }
                                jjCheckNAdd(50);
                            }
                            if ((0x7fffffe07fffffeL & l) != 0L)
                            {
                                if (kind > 68) {
                                    kind = 68;
                                }
                            }
                            if ((0x400000004L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 7;
                            } else if ((0x10000000100000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 1;
                            }
                            break;
                        case 0:
                            if ((0x1000000010000L & l) != 0L && kind > 14) {
                                kind = 14;
                            }
                            break;
                        case 1:
                            if ((0x800000008000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 0;
                            }
                            break;
                        case 3:
                            if ((0x200000002000L & l) != 0L && kind > 15) {
                                kind = 15;
                            }
                            break;
                        case 4:
                            if ((0x800000008000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 3;
                            }
                            break;
                        case 5:
                            if ((0x10000000100000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 4;
                            }
                            break;
                        case 6:
                            if ((0x10000000100000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 5;
                            }
                            break;
                        case 7:
                            if ((0x800000008000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 6;
                            }
                            break;
                        case 8:
                            if ((0x400000004L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 7;
                            }
                            break;
                        case 10:
                            if ((0x7fffffe07fffffeL & l) != 0L && kind > 68) {
                                kind = 68;
                            }
                            break;
                        case 12:
                            if (curChar == 101 && kind > 57) {
                                kind = 57;
                            }
                            break;
                        case 13:
                            if (curChar == 118) {
                                jjstateSet[jjnewStateCnt++] = 12;
                            }
                            break;
                        case 14:
                            if (curChar == 105) {
                                jjstateSet[jjnewStateCnt++] = 13;
                            }
                            break;
                        case 15:
                            if (curChar == 116) {
                                jjstateSet[jjnewStateCnt++] = 14;
                            }
                            break;
                        case 16:
                            if (curChar == 105) {
                                jjstateSet[jjnewStateCnt++] = 15;
                            }
                            break;
                        case 17:
                            if (curChar == 115) {
                                jjstateSet[jjnewStateCnt++] = 16;
                            }
                            break;
                        case 18:
                            if (curChar == 110) {
                                jjstateSet[jjnewStateCnt++] = 17;
                            }
                            break;
                        case 19:
                            if (curChar == 97) {
                                jjstateSet[jjnewStateCnt++] = 18;
                            }
                            break;
                        case 20:
                            if (curChar == 114) {
                                jjstateSet[jjnewStateCnt++] = 19;
                            }
                            break;
                        case 21:
                            if (curChar == 116) {
                                jjstateSet[jjnewStateCnt++] = 20;
                            }
                            break;
                        case 22:
                            if (curChar == 69 && kind > 57) {
                                kind = 57;
                            }
                            break;
                        case 23:
                            if (curChar == 86) {
                                jjstateSet[jjnewStateCnt++] = 22;
                            }
                            break;
                        case 24:
                            if (curChar == 73) {
                                jjstateSet[jjnewStateCnt++] = 23;
                            }
                            break;
                        case 25:
                            if (curChar == 84) {
                                jjstateSet[jjnewStateCnt++] = 24;
                            }
                            break;
                        case 26:
                            if (curChar == 73) {
                                jjstateSet[jjnewStateCnt++] = 25;
                            }
                            break;
                        case 27:
                            if (curChar == 83) {
                                jjstateSet[jjnewStateCnt++] = 26;
                            }
                            break;
                        case 28:
                            if (curChar == 78) {
                                jjstateSet[jjnewStateCnt++] = 27;
                            }
                            break;
                        case 29:
                            if (curChar == 65) {
                                jjstateSet[jjnewStateCnt++] = 28;
                            }
                            break;
                        case 30:
                            if (curChar == 82) {
                                jjstateSet[jjnewStateCnt++] = 29;
                            }
                            break;
                        case 31:
                            if (curChar == 84) {
                                jjstateSet[jjnewStateCnt++] = 30;
                            }
                            break;
                        case 34:
                            if ((0x1000000010000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 33;
                            }
                            break;
                        case 35:
                            if ((0x800000008000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 34;
                            }
                            break;
                        case 36:
                            if ((0x10000000100000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 35;
                            }
                            break;
                        case 38:
                        case 44:
                            if ((0x200000002000L & l) != 0L) {
                                jjCheckNAdd(37);
                            }
                            break;
                        case 39:
                            if ((0x800000008000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 38;
                            }
                            break;
                        case 40:
                            if ((0x10000000100000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 39;
                            }
                            break;
                        case 41:
                            if ((0x10000000100000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 40;
                            }
                            break;
                        case 42:
                            if ((0x800000008000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 41;
                            }
                            break;
                        case 43:
                            if ((0x400000004L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 42;
                            }
                            break;
                        case 45:
                            if ((0x800000008000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 44;
                            }
                            break;
                        case 46:
                            if ((0x10000000100000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 45;
                            }
                            break;
                        case 47:
                            if ((0x10000000100000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 46;
                            }
                            break;
                        case 48:
                            if ((0x800000008000L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 47;
                            }
                            break;
                        case 49:
                            if ((0x400000004L & l) != 0L) {
                                jjstateSet[jjnewStateCnt++] = 48;
                            }
                            break;
                        case 50:
                            if ((0x7fffffe87fffffeL & l) == 0L) {
                                break;
                            }
                            if (kind > 66) {
                                kind = 66;
                            }
                            jjCheckNAdd(50);
                            break;
                        default : break;
                    }
                } while(i != startsAt);
            }
            else
            {
                int hiByte = curChar >> 8;
                int i1 = hiByte >> 6;
                long l1 = 1L << (hiByte & 077);
                int i2 = (curChar & 0xff) >> 6;
                long l2 = 1L << (curChar & 077);
                do
                {
                    switch(jjstateSet[--i])
                    {
                        case 2:
                            if (jjCanMove_0(hiByte, i1, i2, l1, l2))
                            {
                                if (kind > 68) {
                                    kind = 68;
                                }
                            }
                            if (jjCanMove_1(hiByte, i1, i2, l1, l2))
                            {
                                if (kind > 66) {
                                    kind = 66;
                                }
                                jjCheckNAdd(50);
                            }
                            break;
                        case 10:
                            if (jjCanMove_0(hiByte, i1, i2, l1, l2) && kind > 68) {
                                kind = 68;
                            }
                            break;
                        case 50:
                            if (!jjCanMove_1(hiByte, i1, i2, l1, l2)) {
                                break;
                            }
                            if (kind > 66) {
                                kind = 66;
                            }
                            jjCheckNAdd(50);
                            break;
                        default : break;
                    }
                } while(i != startsAt);
            }
            if (kind != 0x7fffffff)
            {
                jjmatchedKind = kind;
                jjmatchedPos = curPos;
                kind = 0x7fffffff;
            }
            ++curPos;
            if ((i = jjnewStateCnt) == (startsAt = 51 - (jjnewStateCnt = startsAt))) {
                break;
            }
            try { curChar = input_stream.readChar(); }
            catch(java.io.IOException e) { break; }
        }
        if (jjmatchedPos > strPos) {
            return curPos;
        }

        int toRet = Math.max(curPos, seenUpto);

        if (curPos < toRet) {
            for (i = toRet - Math.min(curPos, seenUpto); i-- > 0; ) {
                try { curChar = input_stream.readChar(); }
 catch (java.io.IOException e) {
                    throw new RuntimeException(
                            "Internal Error : Please send a bug report.");
                }
            }
        }

        if (jjmatchedPos < strPos)
        {
            jjmatchedKind = strKind;
            jjmatchedPos = strPos;
        }
        else if (jjmatchedPos == strPos && jjmatchedKind > strKind) {
            jjmatchedKind = strKind;
        }

        return toRet;
    }
    private int jjMoveStringLiteralDfa0_2()
    {
        switch(curChar)
        {
            case 62:
                return jjStopAtPos(0, 12);
            default :
                return 1;
        }
    }
    private int jjMoveStringLiteralDfa0_1()
    {
        switch(curChar)
        {
            case 10:
                return jjStopAtPos(0, 9);
            default :
                return 1;
        }
    }
    static final int[] jjnextStates = {
        36, 43, 49, 21, 31,
    };
    private static final boolean jjCanMove_0(int hiByte, int i1, int i2, long l1, long l2)
    {
        switch(hiByte)
        {
            case 0:
                return (jjbitVec2[i2] & l2) != 0L;
            case 3:
                return (jjbitVec3[i2] & l2) != 0L;
            case 32:
                return (jjbitVec4[i2] & l2) != 0L;
            case 33:
                return (jjbitVec5[i2] & l2) != 0L;
            case 47:
                return (jjbitVec6[i2] & l2) != 0L;
            case 48:
                return (jjbitVec7[i2] & l2) != 0L;
            default :
                if ((jjbitVec0[i1] & l1) != 0L) {
                    return true;
                }
                return false;
        }
    }
    private static final boolean jjCanMove_1(int hiByte, int i1, int i2, long l1, long l2)
    {
        switch(hiByte)
        {
            case 0:
                return (jjbitVec8[i2] & l2) != 0L;
            case 3:
                return (jjbitVec3[i2] & l2) != 0L;
            case 32:
                return (jjbitVec4[i2] & l2) != 0L;
            case 33:
                return (jjbitVec5[i2] & l2) != 0L;
            case 47:
                return (jjbitVec6[i2] & l2) != 0L;
            case 48:
                return (jjbitVec7[i2] & l2) != 0L;
            default :
                if ((jjbitVec0[i1] & l1) != 0L) {
                    return true;
                }
                return false;
        }
    }

    /** Token literal values. */
    public static final String[] jjstrLiteralImages = {
        "", null, null, null, null, null, null, null, null, null, null, null, null,
        null, null, null, null, null, "\50", "\51", null, null, null, null, null, null, null,
        null, null, null, null, null, null, null, null, null, null, null, null, null,
        "\72\144\157\155\141\151\156", "\151\155\160\154\151\145\163\55\162\157\154\145", "\151\156\166",
        "\151\156\166\145\162\163\145", "\72\151\156\166\145\162\163\145",
        "\72\154\145\146\164\55\151\144\145\156\164\151\164\171", null, null, null, "\72\162\141\156\147\145",
        "\72\162\145\146\154\145\170\151\166\145", "\72\162\151\147\150\164\55\151\144\145\156\164\151\164\171", null, null,
        "\163\165\142\162\157\154\145", "\72\163\171\155\155\145\164\162\151\143", null, null, null, null, null, null,
        null, "\72", null, null, null, null, null, null, };

    /** Lexer state names. */
    public static final String[] lexStateNames = {
        "DEFAULT",
        "IN_COMMENT",
        "IN_IRI",
    };

    /** Lex State array. */
    public static final int[] jjnewLexState = {
        -1, -1, -1, -1, -1, -1, -1, -1, 1, 0, -1, 2, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
        -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
        -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
    };
    static final long[] jjtoToken = {
        0xffffffffffffd001L, 0x3fL,
    };
    static final long[] jjtoSkip = {
        0x2feL, 0x0L,
    };
    static final long[] jjtoMore = {
        0x2d00L, 0x0L,
    };
    protected JavaCharStream input_stream;
    private final int[] jjrounds = new int[51];
    private final int[] jjstateSet = new int[102];
    protected char curChar;
    /** Constructor. */
    public KRSS2ParserTokenManager(JavaCharStream stream){
        if (JavaCharStream.staticFlag) {
            throw new OWLRuntimeException(
                    "ERROR: Cannot use a static CharStream class with a non-static lexical analyzer.");
        }
        input_stream = stream;
    }

    /** Constructor. */
    public KRSS2ParserTokenManager(JavaCharStream stream, int lexState){
        this(stream);
        SwitchTo(lexState);
    }

    /** Reinitialise parser. */
    public void ReInit(JavaCharStream stream)
    {
        jjmatchedPos = jjnewStateCnt = 0;
        curLexState = defaultLexState;
        input_stream = stream;
        ReInitRounds();
    }
    private void ReInitRounds()
    {
        int i;
        jjround = 0x80000001;
        for (i = 51; i-- > 0;) {
            jjrounds[i] = 0x80000000;
        }
    }

    /** Reinitialise parser. */
    public void ReInit(JavaCharStream stream, int lexState)
    {
        ReInit(stream);
        SwitchTo(lexState);
    }

    /** Switch to specified lex state. */
    public void SwitchTo(int lexState)
    {
        if (lexState >= 3 || lexState < 0) {
            throw new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", TokenMgrError.INVALID_LEXICAL_STATE);
        } else {
            curLexState = lexState;
        }
    }

    protected Token jjFillToken()
    {
        final Token t;
        final String curTokenImage;
        final int beginLine;
        final int endLine;
        final int beginColumn;
        final int endColumn;
        String im = jjstrLiteralImages[jjmatchedKind];
        curTokenImage = im == null ? input_stream.GetImage() : im;
        beginLine = input_stream.getBeginLine();
        beginColumn = input_stream.getBeginColumn();
        endLine = input_stream.getEndLine();
        endColumn = input_stream.getEndColumn();
        t = Token.newToken(jjmatchedKind, curTokenImage);

        t.beginLine = beginLine;
        t.endLine = endLine;
        t.beginColumn = beginColumn;
        t.endColumn = endColumn;

        return t;
    }

    int curLexState = 0;
    int defaultLexState = 0;
    int jjnewStateCnt;
    int jjround;
    int jjmatchedPos;
    int jjmatchedKind;

    /** Get the next Token. */
    public Token getNextToken()
    {
        Token matchedToken;
        int curPos = 0;

        EOFLoop :
            for (;;)
            {
                try
                {
                    curChar = input_stream.BeginToken();
                }
                catch(java.io.IOException e)
                {
                    jjmatchedKind = 0;
                    matchedToken = jjFillToken();
                    return matchedToken;
                }

                for (;;)
                {
                    switch(curLexState)
                    {
                        case 0:
                            jjmatchedKind = 0x7fffffff;
                            jjmatchedPos = 0;
                            curPos = jjMoveStringLiteralDfa0_0();
                            if (jjmatchedPos == 0 && jjmatchedKind > 69)
                            {
                                jjmatchedKind = 69;
                            }
                            break;
                        case 1:
                            jjmatchedKind = 0x7fffffff;
                            jjmatchedPos = 0;
                            curPos = jjMoveStringLiteralDfa0_1();
                            if (jjmatchedPos == 0 && jjmatchedKind > 10)
                            {
                                jjmatchedKind = 10;
                            }
                            break;
                        case 2:
                            jjmatchedKind = 0x7fffffff;
                            jjmatchedPos = 0;
                            curPos = jjMoveStringLiteralDfa0_2();
                            if (jjmatchedPos == 0 && jjmatchedKind > 13)
                            {
                                jjmatchedKind = 13;
                            }
                            break;
                    default:
                        break;
                    }
                    if (jjmatchedKind != 0x7fffffff)
                    {
                        if (jjmatchedPos + 1 < curPos) {
                            input_stream.backup(curPos - jjmatchedPos - 1);
                        }
                        if ((jjtoToken[jjmatchedKind >> 6] & 1L << (jjmatchedKind & 077)) != 0L)
                        {
                            matchedToken = jjFillToken();
                            if (jjnewLexState[jjmatchedKind] != -1) {
                                curLexState = jjnewLexState[jjmatchedKind];
                            }
                            return matchedToken;
                        }
                        else if ((jjtoSkip[jjmatchedKind >> 6] & 1L << (jjmatchedKind & 077)) != 0L)
                        {
                            if (jjnewLexState[jjmatchedKind] != -1) {
                                curLexState = jjnewLexState[jjmatchedKind];
                            }
                            continue EOFLoop;
                        }
                        if (jjnewLexState[jjmatchedKind] != -1) {
                            curLexState = jjnewLexState[jjmatchedKind];
                        }
                        curPos = 0;
                        jjmatchedKind = 0x7fffffff;
                        try {
                            curChar = input_stream.readChar();
                            continue;
                        }
                        catch (java.io.IOException e1) { }
                    }
                    int error_line = input_stream.getEndLine();
                    int error_column = input_stream.getEndColumn();
                    String error_after = null;
                    boolean EOFSeen = false;
                    try { input_stream.readChar(); input_stream.backup(1); }
                    catch (java.io.IOException e1) {
                        EOFSeen = true;
                        error_after = curPos <= 1 ? "" : input_stream.GetImage();
                        if (curChar == '\n' || curChar == '\r') {
                            error_line++;
                            error_column = 0;
                        } else {
                            error_column++;
                        }
                    }
                    if (!EOFSeen) {
                        input_stream.backup(1);
                        error_after = curPos <= 1 ? "" : input_stream.GetImage();
                    }
                    throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar, TokenMgrError.LEXICAL_ERROR);
                }
            }
    }

    private void jjCheckNAdd(int state)
    {
        if (jjrounds[state] != jjround)
        {
            jjstateSet[jjnewStateCnt++] = state;
            jjrounds[state] = jjround;
        }
    }
    private void jjAddStates(int start, int end)
    {
        do {
            jjstateSet[jjnewStateCnt++] = jjnextStates[start];
        } while (start++ != end);
    }
    private void jjCheckNAddTwoStates(int state1, int state2)
    {
        jjCheckNAdd(state1);
        jjCheckNAdd(state2);
    }

}
